import axios from 'axios'
import { API_CONFIG } from './config'

// 创建 axios 实例
const request = axios.create({
  baseURL: API_CONFIG.BASE_URL,
  timeout: 30000 // 设置超时时间为30秒
})

// 请求拦截器
request.interceptors.request.use(
  config => {
    // 这里可以添加token等通用请求头
    return config
  },
  error => {
    return Promise.reject(error)
  }
)

// 响应拦截器
request.interceptors.response.use(
  response => {
    return response.data
  },
  error => {
    const { response } = error
    let message = '请求失败'
    if (response) {
      message = response.data?.detail || response.statusText
    }
    // 这里可以统一处理错误，比如使用 Element Plus 的消息提示
    console.error(message)
    return Promise.reject(error)
  }
)

export default request 